package main;

import main.memento.DataManager;
import main.pojo.Person;

/**
 * Memento（备忘录模式）
 * 在不破坏封装性的前提下，捕获一个对象的内部状态，并在该对象之外保存这个状态。
 * 应用场景：撤销操作、恢复状态等。
 */

public class Main {
    public static void main(String[] args) {
        DataManager dataManager = new DataManager();
        Person p = new Person();
        p.setName("第一版本名称");
        p.setAge(0);
        System.out.println(p);
        Person old = p;
        dataManager.save(p);
        p.setName("第二版本名称");
        p.setAge(1);
        System.out.println(p);
        dataManager.get(old, 0);
        System.out.println(old);
        // 为了证明是同一个对象
        System.out.println(old == p);

    }
}